Some computer systems communicate across networks based on the Internet Protocol (IP) using various protocols such as hypertext transfer protocol (HTTP), file transfer protocol (FTP), and various proprietary protocols. A client application program that wishes to communicate with a server application program across such a network must include software code to handle each of the various protocols used by the application programs for communication.
Some prior art systems provide a library of objects where each object includes software code to support one or more of the various protocols. A software programmer selects the objects from the library that include support for the desired protocol and links the selected objects into the application program during compilation. The software programmer modifies the static application program by re-compiling to add support for other protocols. These prior art systems lack a pluggable framework that can be reused and extended as needed without requiring re-compilation of the application program.
Other prior art systems include software customized to allow two or more application programs to communicate. Such “middleware” is specifically customized to the unique communication requirements of the communicating application programs. The middleware in these prior art systems is static and not re-usable by other application programs with different communication requirements.
For these reasons, a pluggable framework is desired to address one or more of these and other disadvantages.